package com.fruitshop.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 商品详情实体类
 */
@Data
@TableName("product_detail")
public class ProductDetail implements Serializable {
    
    private static final long serialVersionUID = 1L;
    
    /**
     * 详情ID
     */
    @TableId(value = "detail_id", type = IdType.AUTO)
    private Integer detailId;
    
    /**
     * 商品ID
     */
    private Integer productId;
    
    /**
     * 商品名称
     */
    private String productName;
    
    /**
     * 商品分类ID
     */
    private Integer categoryId;
    
    /**
     * 商品分类名称
     */
    private String categoryName;
    
    /**
     * 商品价格
     */
    private BigDecimal price;
    
    /**
     * 商品单位
     */
    private String unit;
    
    /**
     * 商品库存
     */
    private Integer stock;
    
    /**
     * 销量
     */
    private Integer sales;
    
    /**
     * 详细描述
     */
    private String description;
    
    /**
     * 规格参数（JSON格式）
     */
    private String specifications;
    
    /**
     * 营养成分（JSON格式）
     */
    private String nutrition;
    
    /**
     * 保质期
     */
    private String shelfLife;
    
    /**
     * 产地
     */
    private String origin;
    
    /**
     * 储存方法
     */
    private String storage;
    
    /**
     * 包装方式
     */
    private String packaging;
    
    /**
     * 主图URL
     */
    private String mainImage;
    
    /**
     * 详情图片URL列表（JSON格式）
     */
    private String detailImages;
    
    /**
     * 是否热销：0-否，1-是
     */
    private Integer isHot;
    
    /**
     * 是否推荐：0-否，1-是
     */
    private Integer isRecommend;
    
    /**
     * 上架状态：0-下架，1-上架
     */
    private Integer status;
    
    /**
     * 创建时间
     */
    private LocalDateTime createTime;
    
    /**
     * 更新时间
     */
    private LocalDateTime updateTime;
    
    /**
     * 逻辑删除标记：0-未删除，1-已删除
     */
    @TableLogic
    private Integer deleted;
} 